Puzzle solution